iT邦幫忙

DAY 29
0

實習、專題除錯筆記系列 第 29

實習、專題除錯筆記(二十九)Javascript 如何重新初始化陣列?

  • 分享至 

  • xImage
  •  

問題二十九 Javascript 如何重新初始化陣列

Javascript 初始化陣列有兩種方法,一種方法是

var i = [1, 2,3];

i = [];

這樣就可以清空陣列囉!

另外一種是

var i = [1, 2,3];

i.length = 0;

這樣也可以初始化陣列!

但是這兩個有什麼不同呢?

一個是連記憶體位置的值都清空,一個是分配一個新的記憶體空間取代

舉例來說

var foo = [1,2,3];
var bar = [1,2,3];
var foo2 = foo;
var bar2 = bar;
foo = [];
bar.length = 0;
console.log(foo, bar, foo2, bar2);

結果會是

[] [] [1, 2, 3] []

你會發現 bar2 也一起被變更了,那是因為他們參考到同一個記憶體位置。

所以使用的時候可以多多利用這個技巧。

參考資料

https://stackoverflow.com/questions/4804235/difference-between-array-length-0-and-array


上一篇
實習、專題除錯筆記(二十八)怎麼使用 Javascript 的 Reduce?
下一篇
實習、專題除錯筆記(三十)Javascript 判斷物件的小技巧
系列文
實習、專題除錯筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言